.explorer-container {
    --contrast-color: white;
    --explorer-height: 1200px;
    --explorer-width: 1080px;
    --explorer-font-family: 'Josefin Sans';
    --explorer-text-font: bold 15px var(--explorer-font-family);
    --explorer-outer-padding: 17px;
    --file-item-margin: 15px;
    --explorer-text-color: var(--color-IV);
    --explorer-main-color: white;
    --explorer-background-color: var(--color-IV);
    /* voir nth-child ci-dessous pour le nombre d'items par ligne */

    height: var(--explorer-height);
    width: var(--explorer-width);

    display: flex;
    flex-direction: row;
}

.explorer-container > * {
    height: 100%;
    width: 100%;

    flex-shrink: 0;
}

.explorer-container .loader {
    position: relative;

    left: -100%;

    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;

    background-color: #EDF4F5;
}

.explorer {


    padding: 30px 0;

    box-sizing: border-box;

    display: flex;
    flex-direction: column;

    background-color: var(--explorer-background-color);
}

.explorer > * {
    padding: 0px var(--explorer-outer-padding);

    box-sizing: border-box;
}

.explorer > .path-container {
    display: flex;
    flex-direction: row;

    align-items: flex-end;
}

.explorer > .path-container > img {
    height: 60%;
    margin-right: 10px;

    align-self: center;
}

.explorer > .path-container h2 {
    font-family: 'Roboto Condensed';
    font-weight: 300;
    font-size: 30px;

    color: var(--contrast-color);
}

.explorer > .path-container p {
    font-family: 'Roboto Condensed';
    font-weight: 300;
    font-size: 20px;

    margin-bottom: 4px;

    color: var(--contrast-color);
}

.explorer > .path-container p::before {
    content: '/';

    margin-left: 10px;
    margin-right: 10px;

    color: var(--contrast-color);
}

/* est un carousel */
.explorer > .files-list {
    min-height: 961px;

    padding: 0px;

    margin: 36px 0px;

    display: flex;
    flex-direction: row;

    overflow: hidden;
}

.explorer > .files-list .no-files,
.explorer > .files-list .loader {
    height: 100%;
    width: 100%;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    flex-shrink: 0;
}

.explorer > .files-list .no-files.hidden,
.explorer > .files-list .loader.hidden {
    display: none;
}

.explorer > .files-list .no-files > p {
    font-family: 'Roboto Condensed';
    font-size: 30px;
    font-weight: normal;
    text-transform: uppercase;

    color: var(--contrast-color);
}

/* à combiner par un nombre d'items égal au nombre d'items par ligne, ou équivalent */
body.pmr .explorer > .files-list .files-group {
    margin-top: auto;
}

.explorer > .files-list .files-group {
    height: fit-content;

    padding: 0px var(--explorer-outer-padding);

    box-sizing: border-box;

    display: flex;
    flex-direction: row;
    flex-wrap: wrap;

    flex-shrink: 0;

    width: 100%;
}

.explorer > .files-list .files-group .file-item {
    height: 214px;
    width: 156px;

    border: 2px solid var(--explorer-main-color);

    box-sizing: border-box;

    display: flex;
    flex-direction: column;

    margin-right: var(--file-item-margin);
    margin-top: var(--file-item-margin);

    cursor: pointer;
}
/*  nth-child à changer selon le nombre d'objets par ligne */
.explorer > .files-list .files-group .file-item:nth-child(4n)  {
    margin-right: 0;
}

/*  nth-child à changer selon le nombre d'objets par ligne */
.explorer > .files-list .files-group .file-item:nth-child(-n+4) {
    margin-top: 0;
}

.explorer > .files-list .files-group .file-item .illustration-container {
    height: 153px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.explorer > .files-list .files-group .file-item .illustration-container img {
    height: 100%;
    max-width: 60%;
    max-height: 75%;
}

.explorer > .files-list .files-group .file-item .title-container {

    padding: 0px 10px;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    flex-grow: 1;

    background-color: var(--explorer-main-color);
}

.explorer > .files-list .files-group .file-item .title-container p {
    font: var(--explorer-text-font);

    text-align: center;
    color: var(--explorer-text-color);
}

.explorer > .controls {
    margin-top: auto;

    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.explorer > .controls button {
    height: 57px;
    min-width: 160px;

    border-radius: 4px;
    padding: 0px 15px;

    box-sizing: border-box;

    display: flex;
    flex-direction: row;
    align-items: center;

    background-color: var(--explorer-main-color);

    cursor: pointer;
}

.explorer > .controls button img {
    margin-right: 5px;
}

.explorer > .controls button p {
    margin-left: 5px;

    flex-grow: 1;

    font-family: var(--explorer-font-family);
    font-weight: bold;
    font-size: 20px;

    text-align: center;
    text-transform: uppercase;

    color: var(--explorer-text-color);
}

/* .explorer > .loader {
    height: 100%;
    width: 100%;

    position: relative;
    top: -100%;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    flex-shrink: 0;


    pointer-events: none;
} */